package com.zscat.mallplus.oms.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiParam;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 生成订单时传入的参数
 * https://github.com/shenzhuan/mallplus on 2018/8/30.
 */
@Data
@ApiModel(value = "生成订单时传入的参数")
public class OrderParam {
    private String basicGiftsVar;
    @ApiModelProperty(value = "商品的数量，单个商品购买时传入")
    private Integer total;
    /**
     * 收货地址ID
     */
    @ApiModelProperty(value = "收货地址ID")
    private Long addressId;
    /**
     * 优惠券ID
     */
    @ApiModelProperty(value = "优惠券ID，使用优惠券时传入")
    private Long couponId;
    @ApiModelProperty(value = "会员领取优惠券ID，使用优惠券时传入")
    private Long memberCouponId;
    @ApiModelProperty(value = "会员ID")
    private Long memberId;
    /**
     * 使用的积分数
     */
    @ApiModelProperty(value = "使用的积分数，积分兑换商品时传入")
    private Integer useIntegration;
    /**
     * 支付方式：0->未支付；1->支付宝；2->微信；3->余额支付
     */
    @ApiModelProperty(value = "支付方式：0->未支付；1->支付宝；2->微信；3->余额支付", required = true)
    private Integer payType = 1;
    /**
     * 交易方式：0->快递；1->自取
     */
    @ApiModelProperty(value = "交易方式：0->快递；1->自取")
    private Integer offline;
    /**
     * 自取人电话
     */
    @ApiModelProperty(value = "自取人电话，交易方式为自取时传入")
    private String lading_mobile;
    /**
     * 自取人姓名
     */
    @ApiModelProperty(value = "自取人姓名，交易方式为自取时传入")
    private String lading_name;
    /**
     * 科技馆ID
     */
    @ApiModelProperty(value = "科技馆ID")
    private Integer shopId;

    @ApiModelProperty(value = "备注")
    private String content;
    @ApiModelProperty(value = "购物车ID，使用购物车时传入")
    private String cartId;
    @ApiModelProperty(value = "购物车多商品 多ID以逗号隔开 **,***,**")
    private String cartIds;
    /**
     * 1->单个商品直接购买；2->勾选购物车 3->购物车的所有商品
     */
    @ApiModelProperty(value = "1->单个商品直接购买；2->勾选购物车 3->购物车的所有商品")
    private String type;
    /**
     * 订单来源：1->小程序；2->H5；3->PC；4->APP
     */
    @ApiModelProperty(value = "订单来源：1->小程序；2->H5；3->PC；4->APP")
    private Integer source = 1;
    /**
     * 订单类型：1->普通订单；2->秒杀订单；3->拼团订单；4->积分订单
     */
    @ApiModelProperty(value = "订单类型：1->普通订单；2->秒杀订单；3->拼团订单；4->积分订单")
    private Integer orderType = 1;
    /**
     * 库存ID
     */
    @ApiModelProperty(value = "库存ID，单个商品购买时传入")
    private Long skuId;

    @ApiModelProperty(hidden = true)
    private Long goodsId;

    private Long groupId;
    private Long groupActivityId;
    /**
     * 1 发起拼团 2 参与拼团
     */
    @ApiModelProperty(value = "1 发起拼团 2 参与拼团")
    private Integer groupType;
    /**
     * 参与拼团 团购记录id
     */
    @ApiModelProperty(value = "参与拼团 团购记录id")
    private Long mgId = 0L;
    /**
     * 秒杀ID
     */
    @ApiModelProperty(value = "秒杀ID")
    private Long skillId = 0L;
    /**
     * 分佣商品 链接带过来的会员编号
     */
    @ApiModelProperty(value = "分佣商品",dataType = "Long",notes = "分佣商品 链接带过来的会员编号")
    private Long inviteMemberId = 0L;

    private String storeData;

    @ApiModelProperty(value = "总金额")
    private BigDecimal totalAmount;

    @ApiModelProperty(value = "应付金额")
    private BigDecimal payAmount;

    @ApiModelProperty(value = "运费金额")
    private BigDecimal freightAmount;
}
